using System;
using System.Collections.Generic;
using System.Text;
using MindFactorial.LaunchPoint.Common;

namespace MindFactorial.LaunchPoint.Console.Library
{
    /// <summary>
    /// Represents a generic message processor
    /// </summary>
    public interface IMessageProcessor : IProcessor
    {
        /// <summary>
        /// Processes a message given the filter and message being sent
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="filter"></param>
        /// <param name="message"></param>
        void ProcessMessage<T>(string filter, T message);
    }
}
